package com.yupi.yu_picture.service;

import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yupi.yu_picture.exception.BusinessException;
import com.yupi.yu_picture.exception.ErrorCode;
import com.yupi.yu_picture.exception.ThrowUtil;
import com.yupi.yu_picture.model.dto.spaceuser.SpaceUserAddRequest;
import com.yupi.yu_picture.model.dto.spaceuser.SpaceUserQueryRequest;
import com.yupi.yu_picture.model.entity.Space;
import com.yupi.yu_picture.model.entity.SpaceUser;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yupi.yu_picture.model.entity.User;
import com.yupi.yu_picture.model.enums.SpaceRoleEnum;
import com.yupi.yu_picture.model.vo.SpaceUserVO;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
* @author 41722
* @description 针对表【space_user(空间用户关联)】的数据库操作Service
* @createDate 2025-04-16 19:49:39
*/
public interface SpaceUserService extends IService<SpaceUser> {


    long addSpaceUser(SpaceUserAddRequest spaceUserAddRequest);

    void validSpaceUser(SpaceUser spaceUser, boolean add);

    QueryWrapper<SpaceUser> getQueryWrapper(SpaceUserQueryRequest spaceUserQueryRequest);

    SpaceUserVO getSpaceUserVO(SpaceUser spaceUser, HttpServletRequest request);

    List<SpaceUserVO> getSpaceUserVOList(List<SpaceUser> spaceUserList);
}
